package com.mtt.thirdapi.yanxuan.controller;

import com.mtt.thirdapi.yanxuan.service.YXOpenApiService;
import com.mtt.thirdapi.common.api.R;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

@RestController
@RequestMapping("yanxuan")
@Slf4j
public class YXGoodsControoler {
    @Autowired
    YXOpenApiService yxOpenApiService;

    /**
     * 商品ID查询接口  获取渠道能售卖的所有商品（SPU）ID，
     * @return
     */
    @PostMapping("/getIds")
    public R getItemIds(){
        return yxOpenApiService.handleGetIds();
    }

    /**
     * 商品信息查询接口
     * @param itemIds  请求商品（SPU）ID列表，一次最多请求30个商品，用英文逗号分隔 1000884,1000885
     * @return
     */
    @PostMapping("/getItems")
    public R getItemsById(  @RequestParam(value = "itemIds") final String itemIds){
        return  yxOpenApiService.handleGetItemsById(itemIds);
    }

    /**
     * 查询SKU对应商品信息接口   渠道通过skuId获取商品对应信息
     * @param skuId  SKU ID 1146008
     * @return
     */
    @GetMapping("/getItemBySkuId")
    public R getItemBySku(@RequestParam(value = "skuId") String skuId){
        return yxOpenApiService.handleGetItemBySkuId(skuId);
    }

    /**
     * 商品SKU库存查询接口 获取渠道能售卖的商品SKU的库存信息
     * @param skuIds
     * @return
     */
    @GetMapping("/getInventory")
    public R getInventory(@RequestParam(value = "skuIds") String skuIds){
        return yxOpenApiService.handleGetInventory(skuIds);
    }

    /**
     * 获取 sku 对应的渠道协议价信息
     * @param skuIds 用英文逗号分隔的 skuID 列表，例如：10 0100,1006002；一次最多请求 100 个 sku
     * @return
     */
    @GetMapping("/itemSkuDiscount")
    public R itemSkuDiscount(@RequestParam(value = "skuIds") String skuIds){
        return yxOpenApiService.handleItemSkuDiscount(skuIds);
    }
}
